package com.wei.czz.framework.game.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.wei.czz.common.dto.game.GameFlowDto;
import com.wei.czz.common.tool.PageDto;
import com.wei.czz.common.vo.game.GameFlowFormVo;
import com.wei.czz.framework.game.entity.GameFlowEntity;

import java.util.List;

/**
 * Created by IntelliJ IDEA.
 *
 * @author wei
 * date: 2023-03-23 16:09:31
 * className: GameFlowService
 * version: 1.0
 * description:
 */
public interface GameFlowService extends IService<GameFlowEntity> {

    /**
     * 保存游戏流水操作
     * @param gameId       游戏主键
     * @param userId       用户主键
     * @param prizeId      抽奖的奖品主键
     * @param finalPrizeId 最终发放的奖品主键
     */
    void saveGameFlow(Long gameId, Long userId, Long prizeId, Long finalPrizeId);

    /**
     * 分页查询游戏流水操作
     * @param gameFlowFormVo 参数对象
     * @return 游戏流水分页数据
     */
    PageDto<GameFlowDto> pageGameFlowList(GameFlowFormVo gameFlowFormVo);

    /**
     * 批量查询游戏流水操作
     * @param gameIdList 游戏主键列表
     * @return 游戏流水列表
     */
    List<GameFlowEntity> getGameFlowList(List<Long> gameIdList);
}

